home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / QuickDraw3D 1.6 SDK / Mac SampleCode Previous / Geometry Samples- Mac / BoxMooV / headers / BoxMooV_document.h next >
Encoding:
C/C++ Source or Header  |  1999-05-18  |  1.8 KB  |  56 lines  |  [TEXT/CWIE]

  1. /*  document.h                                                                            
  2.  
  3.     This contains all the document-specific code.
  4.                                                                                     
  5.     Michael Bishop - August 21 1996                                                    
  6.     Nick Thompson
  7.     Robert Dierkes                                                                                
  8.     (c)1994-96 Apple computer Inc., All Rights Reserved                                
  9.  
  10. */
  11.  
  12.  
  13. #ifndef _DOCUMENT_H_
  14. #define    _DOCUMENT_H_
  15.  
  16. #include <QuickDraw.h>
  17.  
  18. /*  for QuickDraw 3D */
  19. #include    "QD3D.h"
  20.  
  21. #include    "BoxMooV_texture.h"
  22.  
  23. struct _documentRecord {
  24.  
  25.     WindowPtr            fWindow ;                /* the window associated with this document */
  26.     
  27.     TQ3ViewObject        fView ;                    /*  the view for the scene */
  28.     TQ3GroupObject        fModel ;                /*  object in the scene being modelled */
  29.     TQ3StyleObject        fInterpolation ;        /*  interpolation style used when rendering */
  30.     TQ3StyleObject        fBackFacing ;            /*  whether to draw shapes that face away from the camera */
  31.     TQ3StyleObject        fFillStyle ;            /*  whether drawn as solid filled object or decomposed to components */
  32.     TQ3Matrix4x4        fRotation;                /*  the transform for the model */
  33.     TQ3Point3D            fGroupCenter ;            /*  the center of the group (for rotation)  */
  34.     float                fGroupScale    ;            /*  scaling factor to apply before drawing */
  35.     
  36.     TAnimatedTextureHdl    fTexture;                /*    The QuickTime texture    */
  37.  
  38. };
  39.  
  40. typedef struct _documentRecord DocumentRec, *DocumentPtr, **DocumentHdl ;
  41.  
  42. /* -------------------------------------------------------------------------------------------
  43. ** 
  44. */
  45.  
  46. DocumentHdl    Document_New(void);
  47. DocumentHdl    Document_Open(void);
  48. DocumentHdl Document_GetFromWindow( WindowPtr theWindow);
  49. TQ3Status    Document_Draw( DocumentPtr theDocument ) ;
  50. void        Document_Delete( DocumentHdl theDocument) ;
  51. void        Document_Remap(DocumentHdl theDocument, int newResolution);
  52. TQ3Status    Document_SubmitScene( DocumentPtr theDocument ) ;
  53. void        Document_Animate(DocumentHdl theDocument);
  54. TQ3Status    Texture_ChangeResolution(TAnimatedTextureHdl pAnimTxtr,int newResolution);
  55.  
  56. #endif